var o = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o) {
    return typeof o;
} : function(o) {
    return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o;
};

wxapp.logflag = "@!-", Date.prototype.format = function(o) {
    var t = {
        "M+": this.getMonth() + 1,
        "d+": this.getDate(),
        "h+": this.getHours(),
        "m+": this.getMinutes(),
        "s+": this.getSeconds(),
        "q+": Math.floor((this.getMonth() + 3) / 3),
        "S+": this.getMilliseconds()
    };
    /(y+)/i.test(o) && (o = o.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length)));
    for (var p in t) new RegExp("(" + p + ")").test(o) && (o = o.replace(RegExp.$1, 1 == RegExp.$1.length ? t[p] : ("00" + t[p]).substr(("" + t[p]).length)));
    return o;
}, wxapp.log = function() {
    wxapp.debugLog && wxapp._log(arguments);
}, wxapp.warn = function() {
    wxapp.debugLog && wxapp._log(arguments, console.warn);
}, wxapp.error = function() {
    wxapp.debugLog && wxapp._log(arguments, console.error);
}, wxapp.tlog = function(o) {
    if (wxapp.debugLog && -1 != wxapp.appData.debugLogFilter.indexOf(o)) {
        for (var t = [ wxapp.logflag + arguments[0] + " " + new Date().format("hh:mm:ss.S") ], p = 1; p < arguments.length; p++) t.push(arguments[p]);
        wxapp._log(t);
    }
}, wxapp.twarn = function(o) {
    if (wxapp.debugLog && -1 != wxapp.appData.debugLogFilter.indexOf(o)) {
        for (var t = [ wxapp.logflag + arguments[0] + " " + new Date().format("hh:mm:ss.S") ], p = 1; p < arguments.length; p++) t.push(arguments[p]);
        wxapp._log(t, console.warn);
    }
}, wxapp.terror = function(o) {
    if (wxapp.debugLog && -1 != wxapp.appData.debugLogFilter.indexOf(o)) {
        for (var t = [ wxapp.logflag + arguments[0] + " " + new Date().format("hh:mm:ss.S") ], p = 1; p < arguments.length; p++) t.push(arguments[p]);
        wxapp._log(t, console.error);
    }
}, wxapp._log = function(t, p) {
    for (var e = "", a = [], n = 0; n < t.length; ++n) {
        var r = t[n];
        "object" == (void 0 === r ? "undefined" : o(r)) ? ("" != e && (e += " ", a.push(e), 
        e = ""), Array.prototype.isPrototypeOf(r) ? a.push({
            "数组": r
        }) : a.push(r)) : ("" != e && (e += " , "), e += r);
    }
    "" != e && a.push(e);
    a.length;
    p || (p = console.log), p.apply(null, a);
};